/**
 * 模板字符串：
 *
 *   单、双引号字符换的缺点：
 *    1. 不能随便换行
 *    2. +号拼接繁琐
 *
 *
 *   模板字符串：
 *    1. 用一对反引号声明，例如：`hello world`
 *    2. 内部可以任意嵌入表达式，语法： ${ 表达式 }
 */

// 1.单、双引号字符串
// let str1 = '英雄不问出处，比如：韩信，流氓不问岁数，例如：吴某凡'

// let name1 = '韩信'
// let name2 = '吴某凡'
// let str2 = '英雄不问出处，比如：' + name1 + '，流氓不问岁数，例如：' + name2 + '，真理啊！'

// console.log(str2)
// 2. 模板字符串：
let name1 = '韩信'
let name2 = '吴某凡'

// 1. 嵌入变量，语法 ${ 表达式 }
// let str3 = `英雄不问出处，比如：${name1}，流氓不问岁数，例如：${name2}，真理啊！`
// console.log(typeof str3)
// console.log(str3)


// 2. 对象.属性名
// const obj = {
//   name: '技术痞瑞',
//   age: 27
// }
// console.log(`我叫${obj.name}，今年${obj.age}岁了`)

// 3. 三元表达式/算数运算等
// console.log(`是否成年: ${obj.age >= 18 ? '成年了' : '未成年'}? 明年${obj.age + 1}岁了 `)
// console.log(`是否成年: ${obj.age >= 18 ? 'Yes' : 'No'}? 明年${obj.age + 1}岁了 `)

// 4.函数调用
function sayHi (name) {
  return `hi~${name}`
}
const obj = {
  name: '技术痞瑞',
  age: 27
}
console.log(`${sayHi(obj.name)}，今天也要跟着瑞哥敲代码`)

